package com.muyu;

import com.muyu.entity.Cat;
import org.springframework.data.jpa.repository.JpaRepository;
import org.springframework.data.jpa.repository.Query;
import org.springframework.data.repository.query.Param;

/**
 * @ClassName: CatRepository
 * @Author: Zirun.Xin
 * @Date: 2025/1/2 14:13
 * @Version: 1.0
 * @Description: 猫信息持久层
 */
public interface CatRepository extends JpaRepository<Cat, Long> {

    /**
     * 根据名称查询（通过方法名解析创建查询sql）
     * @param name 名称
     * @return 查询结果集
     */
     Cat findByName(String name);

    /**
     * 根据名称和颜色查询（通过方法名解析创建查询sql）
     * @param name 名称
     * @param color 颜色
     * @return 查询结果集
     */
     Cat findByNameAndColor(String name, String color);

    /**
     * 根据名称查询猫信息（通过注解定义查询sql）
     * @param name 名称
     * @return 查询结果集
     */
     @Query(value = "from Cat c where c.name =:name")
     Cat findCatByName(@Param(value = "name") String name);
}
